﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace STRUCTURE_EXAMPLE.EXCERCISES
{
    public partial class frmRegistration : Form
    {
        public frmRegistration()
        {
            InitializeComponent();
        }

        private void btn_Dangki_Click(object sender, EventArgs e)
        {
            int iTuoi;
            errorProvider1.Clear();
            if (string.IsNullOrEmpty(txt_Ten.Text))
            {
                errorProvider1.SetError(txt_Ten, "Vui lòng nhập vào Tên của bạn");
            }
            else if (string.IsNullOrEmpty(txt_Tuoi.Text))
            {
                errorProvider1.SetError(txt_Tuoi, "Vui lòng nhập vào Tuổi của bạn");
            }
            else if (string.IsNullOrEmpty(cbo_Honnhan.Text))
            {
                errorProvider1.SetError(cbo_Honnhan, "Vui lòng chọn tình trạng hôn nhân của bạn");
            }
            else if (string.IsNullOrEmpty(cbo_Gioitinh.Text))
            {
                errorProvider1.SetError(cbo_Gioitinh, "Vui lòng chọn Giới tính của bạn");
            }
            else if (!int.TryParse(txt_Tuoi.Text, out iTuoi))
            {
                errorProvider1.SetError(txt_Tuoi, "Nhập giá trị số");
            }
            else
            {              
                if (iTuoi < 19 || cbo_Honnhan.Text.Equals("Đã kết hôn") || 
                                    (iTuoi < 22 && cbo_Gioitinh.Text.Equals("Nam")))
                    txt_Ketqua.Text = "Không đủ điều kiện để tham gia kết bạn!";               
                else    
                    txt_Ketqua.Text = "Đủ điều kiện để tham gia kết bạn!";
            }
        }

        private void txt_Ten_KeyPress(object sender, KeyPressEventArgs e)
        {
            //Note: Sử dụng event này để kiểm tra giá trị người dùng nhập vào từ bàn phím
            //hoặc có thể lựa chọn TryParse()
            //e.Handled = true: Ko nhận vào giá trị sai đó
            //e.Handled = false: Đưa ra thông báo và vẫn nhận giá trị sai đó
            errorProvider1.Clear();            
            if (Char.IsNumber(e.KeyChar) &&(e.KeyChar != (Char)Keys.Back && e.KeyChar != (Char)Keys.Delete))
            {
                errorProvider1.SetError(txt_Ten, "Tên của bạn ko được chứa ký tự số!");
                e.Handled = true;
            }            
        }

        private void txt_Tuoi_KeyPress(object sender, KeyPressEventArgs e)
        {
            //Note: Sử dụng event này để kiểm tra giá trị người dùng nhập vào từ bàn phím
            //hoặc có thể lựa chọn TryParse()
            //e.Handled = true: Ko nhận vào giá trị sai đó
            //e.Handled = false: Đưa ra thông báo và vẫn nhận giá trị sai đó
            errorProvider1.Clear();
            if (!Char.IsNumber(e.KeyChar) && e.KeyChar != (Char)8 && e.KeyChar != (Char)46)
            {
                errorProvider1.SetError(txt_Tuoi, "Vui lòng nhập vào tuổi kiểu số nguyên!");
                e.Handled = true;
            }
        }
    }
}
